import { Loader } from "../net/Loader";
import { ClassUtils } from "../utils/ClassUtils";
import { Controller } from "./Controller";
import { ControllerRef } from "./ControllerRef";
import { GBox } from "./GBox";
import { GButton } from "./GButton";
import { GComboBox } from "./GComboBox";
import { Gear, GearBool, GearString } from "./gear/Gear";
import { GearColor } from "./gear/Gear";
import { GearDisplay } from "./gear/GearDisplay";
import { GearNumber, GearHexColor } from "./gear/Gear";
import { GearStrColor } from "./gear/Gear";
import { GearTweenConfig } from "./gear/GearTweenConfig";
import { GImage } from "./GImage";
import { GLabel } from "./GLabel";
import { GList } from "./GList";
import { GLoader } from "./GLoader";
import { GPanel } from "./GPanel";
import { GProgressBar } from "./GProgressBar";
import { GRoot } from "./GRoot";
import { GScrollBar } from "./GScrollBar";
import { GSlider } from "./GSlider";
import { GTextField } from "./GTextField";
import { GTextInput } from "./GTextInput";
import { GTree } from "./GTree";
import { GWidget } from "./GWidget";
import { GWindow } from "./GWindow";
import { Layout } from "./layout/Layout";
import { Relation } from "./Relation";
import { Scroller } from "./Scroller";
import { StretchParam } from "./StretchParam";
import { TranslationsLoader } from "./TranslationLoader";
import { GMovieClip } from "./GMovieClip";
import { Selection } from "./selection/Selection";

let r = ClassUtils.regClass;
r("GWidget", GWidget);
r("GImage", GImage);
r("GMovieClip", GMovieClip);
r("GLoader", GLoader);
r("GTextField", GTextField);
r("GTextInput", GTextInput);
r("GBox", GBox);
r("GPanel", GPanel);
r("GLabel", GLabel);
r("GButton", GButton);
r("GComboBox", GComboBox);
r("GList", GList);
r("GProgressBar", GProgressBar);
r("GScrollBar", GScrollBar);
r("GSlider", GSlider);
r("GTree", GTree);
r("GWindow", GWindow);
r("GRoot", GRoot);
r("Controller", Controller);
r("ControllerRef", ControllerRef);
r("Relation", Relation);
r("Gear", Gear);
r("GearDisplay", GearDisplay);
r("GearBool", GearBool);
r("GearNumber", GearNumber);
r("GearString", GearString);
r("GearColor", GearColor);
r("GearStrColor", GearStrColor);
r("GearHexColor", GearHexColor);
r("GearTweenConfig", GearTweenConfig);
r("Selection", Selection);
r("Scroller", Scroller);
r("Layout", Layout);
r("StretchParam", StretchParam);
r("ItemData", class extends Object { });

Loader.registerLoader(["i18ns"], TranslationsLoader);